/*
	user model
	@author guoqing.ma
*/
var mongodb = require('./db');

function  User(user){
	this._id = user._id;
	this.name = user.name;
	this.password = user.password;

	this.save = function save(callback){
		var user = {
			name : this.name,
			password : this.password
		};
		mongodb.open(function(err,col){
			if(err){
				return callback;
			}
			col.collection('user',function(err,collection){
				if(err){
					mongodb.close();
					return callback(err);
				}
				collection.insert(user,{safe:true} ,function(err,user){
					mongodb.close;
					callback(err,user);
				});
			});
		});

	}
}
module.exports = User;

User.getUser = function(user,callback){
	mongodb.open(function(err,col){
		if(err){
			return err;
		}
		col.collection('user',function(err,collection){
			if(err){
				mongodb.close();
				return err;
			}
			collection.findOne({name:user.name},function(err,doc){
				mongodb.close();
				if(doc){
					var user = new User(doc);
					callback(err,user);
				}else{
					callback(err,null);
				}
			});
		});
	});
};
User.login = function(user,callback){
	mongodb.open(function(err,col){
		if(err){
			return err;
		}
		col.collection('user',function(err,collection){
			if(err){
				mongodb.close();
				return err;
			}
			collection.findOne({name:user.name,password:user.password},function(err,doc){
				mongodb.close();
				if(doc){
					var user = new User(doc);
					console.log(doc);
					console.log(user);
					callback(err,user);
				}else{
					callback(err,null);
				}
			});
		});
	});
};



